package cn.hinglo.common.event;

import cn.hinglo.common.entity.EventDto;
import net.dreamlu.event.core.ApplicationEvent;

/***
 * @description: 封装事件监听的基类，所有事假处理都必须继承
 * @author HingLo
 * @date 2019/05/29
 * @param <T>
 */
public abstract class BaseEventHandler<T extends EventDto> extends ApplicationEvent<EventDto> {

    public BaseEventHandler(T source) {
        super(source);
    }

    /***
     * 事件具体处理事件 ，该方法需要使用@EventListener 注解来配置
     * @param event 事件
     */
    abstract public void eventHandler(BaseEventHandler<EventDto> event);


}
